﻿using Se.Model.Data;
using Se.Model.GameModel.Card.Skill;
using Se.Model.GameModel.Character;
using Se.Model.Template.Card;
using System;
using System.Collections.Generic;
using System.Linq;

namespace Se.Model.GameModel.Card
{
    /// <summary>
    /// 打牌中的玩家
    /// </summary>
    public class CardPlayer : DataEntityBase
    {
        public CardPlayer(CardTable table, Player player)
        {
            this.Table = table;
            this.Player = player;
            this.ID = DataEntityIDGenerator.NewGenerateID(GetType());
        }

        public Player Player { get; set; }

        /// <summary>
        /// 座位号
        /// </summary>
        public int SeatIndex { get; set; }

        /// <summary>
        /// 玩家所处的牌桌
        /// </summary>
        public CardTable Table { get; set; }

        /// <summary>
        /// 身份牌
        /// </summary>
        public PlayerIdentity Identity { get; set; }

        /// <summary>
        /// 武将牌
        /// </summary>
        public CardBossTemplate BossTemplate { get; set; }

        /// <summary>
        /// 当前血量
        /// </summary>
        public int HpCurrent { get; set; }

        /// <summary>
        /// 玩家技能集合
        /// </summary>
        public PlayerCardSkillCollection CardSkillCollection { get; set; }

        /// <summary>
        /// 被攻击
        /// </summary>
        /// <param name="skill"></param>
        public void OnAction(CardSkillBase skill)
        {

        }
    }
}
